$().ready(function() {

    
    // 01 创建地图并初始化 start
    var map = new BMap.Map("container");    
    var point = new BMap.Point(116.404, 39.915);    
    map.centerAndZoom(point, 15);    


    // 02 开启鼠标滚轮缩放
    map.enableScrollWheelZoom(true);


    // 03 默认控件
    // 0301 默认控件参数配置
    var opts = {
        anchor: BMAP_ANCHOR_TOP_RIGHT,
        offset: new BMap.Size(10, 20),
        type: BMAP_NAVIGATION_CONTROL_LARGE
    };
    // 0302 开启默认控件
    map.addControl(new BMap.NavigationControl(opts));
    // map.addControl(new BMap.OverviewMapControl());
    // map.addControl(new BMap.ScaleControl());
    // map.addControl(new BMap.MapTypeControl());
    // map.addControl(new BMap.CopyrightControl());


    // 04 自定义控件
    // 0401 定义一个控件类，即function    
    function ZoomControl(){    
        // 设置默认停靠位置和偏移量  
        this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT;    
        this.defaultOffset = new BMap.Size(10, 10);    
    }    

    // 0402 通过JavaScript的prototype属性继承于BMap.Control   
    ZoomControl.prototype = new BMap.Control();

    // 0403 实现initialize方法
    // 自定义控件必须实现initialize方法，并且将控件的DOM元素返回   
    // 在本方法中创建个div元素作为控件的容器，并将其添加到地图容器中   
    ZoomControl.prototype.initialize = function(map){    
        // 创建一个DOM元素   
        var div = document.createElement("div");    
        // 添加文字说明    
        div.appendChild(document.createTextNode("放大2级"));    
        // 设置样式    
        div.style.cursor = "pointer";    
        div.style.border = "1px solid gray";    
        div.style.backgroundColor = "white";    
        // 绑定事件，点击一次放大两级    
        div.onclick = function(e){  
            map.zoomTo(map.getZoom() + 2);    
        }    
        // 添加DOM元素到地图中   
        map.getContainer().appendChild(div);    
        // 将DOM元素返回  
        return div;    
    }

    // 0404 创建控件实例    
    var myZoomCtrl = new ZoomControl();    

    // 0405 添加到地图当中    
    map.addControl(myZoomCtrl);

    // 测试：进入页面两秒钟后修改地图的中心位置
    window.setTimeout(function(){  
        map.panTo(new BMap.Point(116.409, 39.918));    
    }, 2000);
	

});